 
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package logica.cliente;

import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.ArrayList;
import logica.cliente.Usuario;
import presentacion.MensajeGlobal;


/**
 *
 * @author abel
 */
    public interface ClienteRMIinterface extends Remote  {
        
    public boolean ejecutar(/*Nodo nodo*/) throws RemoteException;
    //El cliente que trabaja como servidor escribe el mensaje y lo guarda dependiendo de la sala que pertenezca
    public void escribirmensaje(Usuario usuario) throws RemoteException;
    
    public void convertirseenservidor() throws RemoteException;
    
    public void escribirmensajederespaldo(Usuario usuario) throws RemoteException;
    
    public void entraraunasala(Usuario usuario) throws RemoteException;
    
    public void salirdeunasala(Usuario usuario) throws RemoteException;
    
    public void eliminarip(Usuario usuario) throws RemoteException;
    
    public void borrardatosinterfaz() throws RemoteException;
    
    
    public void llenarsalaservidor(Usuario usuario) throws RemoteException;
    
    public void eliminarmensaje(Usuario usuario) throws RemoteException;
       
    public String prueba() throws RemoteException;
    //recive el mensaje del servidor y lo muestra
    public void mostramensajermi(Usuario usuario)throws RemoteException;
    
    //El cliente cambia de sala de chat
    public void cambiodesala(Usuario usuario) throws RemoteException;
    //el cliente verifiica si los clentes mayores que el estan actvos para hacer papel de servdor
    public void estasactivo() throws RemoteException;
    
    public void usarservidorderespaldo() throws RemoteException;
    
    public void guardaripservidorderespaldo (Usuario usuario) throws RemoteException;
    
    public void mostrarmensajermi2(Usuario usuario) throws RemoteException;
    
    public void mostrarmensajermiguardados(Usuario usuario) throws RemoteException;
}
